Mobile application enabling product discovery and obtaining feedback from network

ABSTRACT

A system and method are disclosed automating the provision and consumption of social media product recommendations in a mobile environment. A user enters a physical site associated with a merchant that has implemented the Pick System and initiates a mobile Pick System application on their mobile device to perform mobile device Pick List management operations. The user then uses the mobile device to provide product identification data corresponding to a product displayed at the physical site, along with a request to associate the product with a predetermined Pick List, to the Picks System. In turn the Picks System processes the product identification data and the request to associate the product with the predetermined Pick List.

CROSS REFERENCE TO RELATED APPLICATIONS

U.S. patent application Ser. No. 13/891,649, entitled “On-Site CurationThat Enables Scalable Peer Generated Content that is Visual and InspiresDiscovery Anywhere” by inventors Christopher H. Howe, Joseph D.Langeway, Manish C. Mehta, and Rodney T. Whisnant, filed on May 10,2013, describes exemplary methods and systems and is incorporated byreference in its entirety.

U.S. patent application Ser. No. 13/891,666, entitled “AutomatedCreation of Collages from a Collection of Assets” by inventors Rodney T.Whisnant, Joseph D. Langeway, and Christopher H. Howe, filed on Jun. 17,2013, describes exemplary methods and systems and is incorporated byreference in its entirety.

U.S. patent application Ser. No. 13/891,684, entitled “Process ToDisplay Picks On Product Category Pages” by inventors Rodney T.Whisnant, Joseph D. Langeway, and Christopher H. Howe, filed on May 10,2013, describes exemplary methods and systems and is incorporated byreference in its entirety.

U.S. patent application Ser. No. 13/891,698, entitled “Forward LookingRecommendations Using Information Derived from a Plurality of PicksGenerated by a Plurality of Users” by inventor Rodney T. Whisnant, filedon May 10, 2013, describes exemplary methods and systems and isincorporated by reference in its entirety.

U.S. patent application Ser. No. 13/891,710, entitled “Picks API WhichFacilitates Dynamically Injecting Content onto a Web Page for SearchEngines,” by inventor Rodney T. Whisnant, filed on May 10, 2013,describes exemplary methods and systems and is incorporated by referencein its entirety.

BACKGROUND OF THE INVENTION

Field of the Invention

The present invention relates to the management of information handlingsystems. More specifically, embodiments of the invention provide asystem and method for automating the provision and consumption of socialmedia product recommendations in a mobile environment.

Description of the Related Art

As the value and use of information continues to increase, individualsand businesses seek additional ways to process and store information.One option available to users is information handling systems. Aninformation handling system generally processes, compiles, stores,and/or communicates information or data for business, personal, or otherpurposes thereby allowing users to take advantage of the value of theinformation. Because technology and information handling needs andrequirements vary between different users or applications, informationhandling systems may also vary regarding what information is handled,how the information is handled, how much information is processed,stored, or communicated, and how quickly and efficiently the informationmay be processed, stored, or communicated. The variations in informationhandling systems allow for information handling systems to be general orconfigured for a specific user or specific use such as financialtransaction processing, airline reservations, enterprise data storage,or global communications. In addition, information handling systems mayinclude a variety of hardware and software components that may beconfigured to process, store, and communicate information and mayinclude one or more computer systems, data storage systems, andnetworking systems.

These same information handling systems have played a key role in therapid growth of electronic commerce on the Internet. In recent years,information handling systems have also been instrumental in thewidespread adoption of social media into the mainstream of everydaylife. Social media commonly refers to the use of web-based technologiesfor the creation and exchange of user-generated content for socialinteraction. As such, it currently accounts for approximately 22% of alltime spent on the Internet.

One emerging aspect of electronic commerce is for users to use socialmedia sites as a venue to review or recommend various products. Suchreviews or recommendations may be provided in a variety of ways,including simple online forum or social media posts, to blog entries,video clips, and even dedicated websites. In some cases, the reviewermay provide a link to either a merchant's website, or a product detailspage, for the product they are reviewing or recommending. In othercases, a merchant may provide a link on their product details page to areviewer or recommender.

However, such approaches typically require the viewer of the productreviews or recommendations to leave the social media site to visit themerchant's website or product details pages. Conversely, viewers of amerchant's product details pages may be required to leave to themerchant's website to view the reviews or recommendations of the productthey were considering. Furthermore, the reviewer or recommender of theproducts is typically not provided the means to provide their reviews orrecommendations on the merchant's product category pages from a mobiledevice.

SUMMARY OF THE INVENTION

A system and method are disclosed for automating the provision andconsumption of social media product recommendations in a mobileenvironment. In various embodiments, a user enters a physical siteassociated with a merchant that has implemented the Pick System. Theuser then initiates a mobile Pick System application on their mobiledevice to perform mobile device Pick List management operations.

In various embodiments, the user uses a mobile device to provide productidentification data corresponding to a product displayed at the physicalsite, along with a request to associate the product with a predeterminedPick List, to the Picks System. In turn the Picks System processes theproduct identification data and the request to associate the productwith the predetermined Pick List. In certain embodiments, the productidentification data may comprise stock keeping unit (SKU) dataassociated with the product or a photograph of the product. In variousembodiments, the user submits a request to the Pick System to provideadditional Pick Lists that contain the displayed product as well asother products. In response, the additional Pick Lists are displayedwithin the user interface of the user's mobile device.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention may be better understood, and its numerousobjects, features and advantages made apparent to those skilled in theart by referencing the accompanying drawings. The use of the samereference number throughout the several figures designates a like orsimilar element.

FIG. 1 is a general illustration of components of an informationhandling system as implemented in the system and method of the presentinvention;

FIG. 2 is a simplified block diagram showing the implementation of asocial media product recommendation system in an electronic commerceenvironment;

FIG. 3 is a simplified block diagram showing a high-level architectureof a social media product recommendation system;

FIG. 4 is a generalized flowchart of the implementation of a socialmedia product recommendation system in an electronic commerceenvironment;

FIGS. 5a through 5c are a generalized flowchart of the performance ofPick List management operations in an electronic commerce environment;

FIGS. 6a and 6b show the display of user's Picks user profile within auser interface (UI) window;

FIGS. 7a and 7b show a Pick List fly-out user interface windowimplemented to manage a plurality of Pick Lists;

FIGS. 8a through 8c are a generalized flowchart of the performance ofPick List viewing operations in an electronic commerce environment;

FIGS. 9a and 9b show the display of individual products associated witha Pick List within a UI window;

FIGS. 10a and 10b show the display of product details and associateduser reviews and recommendations within a UI window;

FIGS. 11a and 11b show a modal shopping sub-window implemented within aUI window;

FIGS. 12a through 12c are a generalized flowchart of the performance ofmobile device Pick List management operations;

FIG. 13 shows a Pick System log-in window implemented in the UI of amobile device;

FIG. 14 shows a Pick List creation command button implemented in the UIwindow of a mobile device;

FIG. 15 shows a Pick List management window implemented in the UI of amobile device;

FIG. 16 shows a Pick List product addition window implemented in the UIof a mobile device;

FIG. 17 shows the capture of a coding symbol associated with a productby a mobile device;

FIG. 18 shows a product image, and associated product details,corresponding to a coding symbol captured by a mobile device;

FIGS. 19a and 19b are a generalized flowchart of the performance ofmobile device Pick List viewing operations;

FIG. 20 shows the display of a plurality of Pick Lists corresponding toa product selected by a user within the UI of a mobile device; and

FIG. 21 shows the display of a plurality of products associated with aselected Pick List within the UI of a mobile device.

DETAILED DESCRIPTION

A system and method are disclosed for automating the provision andconsumption of social media product recommendations in a mobileenvironment. For purposes of this disclosure, an information handlingsystem may include any instrumentality or aggregate of instrumentalitiesoperable to compute, classify, process, transmit, receive, retrieve,originate, switch, store, display, manifest, detect, record, reproduce,handle, or utilize any form of information, intelligence, or data forbusiness, scientific, control, or other purposes. For example, aninformation handling system may be a personal computer, a networkstorage device, or any other suitable device and may vary in size,shape, performance, functionality, and price. The information handlingsystem may include random access memory (RAM), one or more processingresources such as a central processing unit (CPU) or hardware orsoftware control logic, ROM, and/or other types of nonvolatile memory.Additional components of the information handling system may include oneor more disk drives, one or more network ports for communicating withexternal devices as well as various input and output (I/O) devices, suchas a keyboard, a mouse, and a video display. The information handlingsystem may also include one or more buses operable to transmitcommunications between the various hardware components.

FIG. 1 is a generalized illustration of an information handling system100 that can be used to implement the system and method of the presentinvention. The information handling system 100 includes a processor(e.g., central processor unit or “CPU”) 102, input/output (I/O) devices104, such as a display, a keyboard, a mouse, and associated controllers,a hard drive or disk storage 106, and various other subsystems 108. Invarious embodiments, the information handling system 100 also includesnetwork port 110 operable to connect to a network 140, which is likewiseaccessible by a service provider server 142. The information handlingsystem 100 likewise includes system memory 112, which is interconnectedto the foregoing via one or more buses 114. System memory 112 furthercomprises operating system (OS) 116 and in various embodiments may alsocomprise a social media recommendation system 118 and a web browser 120.In one embodiment, the information handling system 100 is able todownload the social media recommendation system 118 from the serviceprovider server 142. In another embodiment, the social mediarecommendation system 118 is provided as a service from the serviceprovider server 142.

FIG. 2 is a simplified block diagram showing a social media productrecommendation system 202 implemented in accordance with an embodimentof the invention in an electronic commerce environment 200. In variousembodiments, the social media product recommendation system 202,referred to herein as a “Pick System,” is implemented to allow users tocreate and manage collections of their favorite products. These productcollections, variously referred to herein as a “Pick List,” a “PickCollage,” or “Picks,” can then be automatically published and displayedon related product details pages 214 in a merchant's website. In variousembodiments, the Pick List, Pick Collage, or Picks are provided to themerchant's website from a server at a remote location. In certainembodiments, the Pick List, Pick Collage, or Picks are provided to themerchant's website by a service provider on an on-demand basis.

In various embodiments, visitors to these product details pages 214 canshop directly from a Pick List, share a Pick List through social medianetworks, or build a long-term social connection with the creator of aPick List by “following” them. In certain of these embodiments, thevisitors are likewise able to use such social media networks to “like”predetermined Pick Lists, Pick Collages, or Picks. As used herein, inthe context of social media environments, the term “like” refers to theuser expressing that he or she likes, enjoys or supports certaincontent.

As used herein, a Pick List refers to a pictorial grouping of productsthat a user has selected, assembled and named. In various embodiments,the data associated with a Pick List is managed by the Pick System 202as described in greater detail herein. As used herein, a Pick Collagerefers to a set of products that a user has selected from one or morePick Lists, which are then pictorially arranged by the user for use as abackground image within a user interface window of a display device. Incertain embodiments, a Pick Collage may include a product that is not amember of a Pick List associated with the Pick System user.

In various embodiments, one or more Pick Collages are implemented toallow Pick System users to choose a different visual layout for productsin existing Pick Lists. In certain embodiments, various Pick Collagetemplates are provided, which offer different backgrounds andpositioning to give the Pick Collage creator control over which productsare displayed in which positions. In various embodiments, a Pick Systemuser is able to select from a plurality of Pick Collage templates, eachof which includes various design parameters, such as a visual layout, abackground image, a color palette, and a typeface.

In certain embodiments, Pick Collages are displayed on a merchant'swebsite product details pages, the Pick Collage creator's Picks userprofile, or both. In various embodiments, a predetermined Pick Listdisplays the products in a simple layout while a Pick Collage displaysthe same products in a more creative rendering. As such, Pick Collagesallow Pick Collage creators to select products from one or more of theirexisting Pick Lists, select an existing Pick Collage design template,and then populate the selected Pick Collage design template with theselected products.

As used herein, a “Pick Set” refers to a grouping of two or more PickLists. As used herein, a “Pick List preview” refers to the display of apredetermined number of products that were most recently added to one ormore target Pick Lists. In one embodiment the predetermined number ofproducts is determined by the Pick System user. In another embodiment,the predetermined number of products is determined by an administratorof the merchant's website. In yet another embodiment, the predeterminednumber or products is different for various pages within the merchant'swebsite. In still another embodiment, the one or more target Pick Listsare selected by the Pick System user. In one embodiment, the one or moretarget Pick Lists are a predetermined number of Pick Lists that a PickSystem user has most recently interacted with.

As used herein, a “Picks Collage detail page” refers to the display ofproduct details contained in a selected Pick Collage. In variousembodiments, the Picks Collage detail page provides predeterminedfunctionalities. As used herein, an “anonymous user” refers to a userwho either does not have a client login identifier or a user that has aclient login identifier but is not presently logged-in to the PickSystem.

In various embodiments, the Pick System 202 is implemented to reduce theeffort required for a merchant to integrate the functionality of thePick System 202 within their website. In various embodiments, softwarecustomization tasks are performed either by an operator of the PickSystem 202 or a third party integration team. Another aspect is thatthese third parties are able to maintain and enhance the feature setprovided to the merchant without requiring the merchant to perform anyadditional integration or software upgrade tasks once the basicintegration has been established.

In various embodiments, these objectives are achieved, in part, byintegrating Pick System functionality into the merchant's website byincluding a merchant-specific script code file, such as a PicksJavascript (JS) file 216 in predetermined pages, such as product detailspages, of the merchant's website 214. In various embodiments, themerchant-specific Picks JS file 216 is dynamically assembled. As aresult, the merchant-specific Picks JS file 216 has the ability tochange, capture data, and inject information into the merchant's websitein various ways. This dynamic JS approach, coupled with contentinjection into a web page, is implemented in various embodiments as a“broadcast” paradigm depicted in FIG. 2.

In various embodiments, a consolidated script code file, such as theconsolidated Picks JS file 210 included in a merchant's web page isdynamically assembled at runtime by combining a general script code baselibrary, such as the general Pick System base JS library 206, with aseries of script code customizations, such as JS customizations 208,that are generated to support merchant-specific aspects of theintegration. In various embodiments, the Pick System base JS library206, the merchant JS customizations 208, and the consolidated Picks JSfile 210 are stored and maintained in a Pick System JS repository 204.In various embodiments, the resulting consolidated Picks JS file 210 isimplemented and maintained 212 as a merchant-specific Picks JS file 216in the merchant's website 214. In various embodiments, the consolidatedPicks JS file 210 is implemented and maintained 212 as amerchant-specific Picks JS file 216 either by the owner or an operatorof the merchant's website 214, the operator of the Pick System 202, or athird party.

In various embodiments, the merchant-specific Picks JS file 216 isimplemented to make dynamic HTTP requests 222 to the Pick System 202 torecord or retrieve additional information through a Pick System PublicApplication Programming Interface (API) 224. In certain of theseembodiments, the Pick System 202 provides a response 228 to the requestswith predetermined data. In at least one embodiment, JS Object Notationwith Padding (JSONP) 226 is used to perform the response. In oneembodiment, this data is used in a target page of the merchant's website214. In another embodiment, the data is used to trigger additional typesof requests back to the Pick System 202. In various embodiments, thedata is formatted and dynamically into the target page of the merchant'swebsite 214 as it is received from the Pick System 202 by manipulatingthe browser's Document Object Model (DOM) 218. In one embodiment,changes to the merchant page JS 220 are kept in sync with the merchantJS customizations 208.

FIG. 3 is a simplified block diagram showing a high-level architectureof a social media product recommendation system 300 implemented inaccordance with an embodiment of the invention. In various embodiments,the social media product recommendation system 300, referred to hereinas a “Pick System,” is implemented in a cloud computing environmentfamiliar to skilled practitioners of the art. In this embodiment, thePick System 300 includes a content delivery network (CDN) 306, anoffline services system 316, a purification services system 334, atimeline services system 350, and a report services system 366. As shownin FIG. 3, user access to the Pick System 380 includes visitors to amerchant's website 302 and mobile device users 382.

In various embodiments, a mobile Pick System application is implementedon a mobile device associated with a Pick System user. In theseembodiments, certain predetermined Pick System operations are performedby the Pick System user's mobile device as described in greater detailherein. In one embodiment, the mobile Pick System application isspecific to a predetermined merchant that has implemented the PickSystem, such as the merchant associated with the physical site. Inanother embodiment, the mobile Pick System application is configured tobe specific to a predetermined set of merchants that have implementedthe Pick System. In yet another embodiment, the mobile Pick Systemapplication is configured to support Pick System operations with anymerchant that has implemented the Pick System 300.

As used herein a mobile device refers to a mobile device refers towireless devices such as mobile telephones, smart phones, personaldigital assistants (PDAs), tablet computers, handheld or laptopcomputers, and similar devices that have telecommunicationscapabilities. In various embodiments, the mobile device is used toexchange information between the Pick System 300 and a Pick System userthrough the use of a network. In various embodiments, the network may bea public network, such as the Internet, a physical private network, avirtual private network (VPN), or any combination thereof. Thecombination of the mobile device and the network may be considered amobile environment.

In certain embodiments, the network may be a wireless network, includinga personal area network (PAN), based on technologies such as Bluetoothor Ultra Wideband (UWB). In various embodiments, the wireless networkmay include a wireless local area network (WLAN), based on variations ofthe IEEE 802.11 specification, often referred to as WiFi. In certainembodiments, the wireless network may include a wireless wide areanetwork (WWAN) based on an industry standard including two and a halfgeneration (2.5G) wireless technologies such as global system for mobilecommunications (GPRS) and enhanced data rates for GSM evolution (EDGE).In various embodiments, the wireless network may include WWANs based onexisting third generation (3G) wireless technologies including universalmobile telecommunications system (UMTS) and wideband code divisionmultiple access (W-CDMA). Other embodiments may include theimplementation of other 3G technologies, including evolution-dataoptimized (EVDO), IEEE 802.16 (WiMAX), wireless broadband (WiBro),high-speed downlink packet access (HSDPA), high-speed uplink packetaccess (HSUPA), and emerging fourth generation (4G) wirelesstechnologies. Skilled practitioners of the art will realize that manysuch embodiments are possible and the foregoing is not intended to limitthe spirit, scope or intent of the invention.

In various embodiments, the visitors to a merchant's website 302 and themobile device users 382 are also able to access the CDN 306, the offlineservices system 316, the purification services system 334, and thetimeline services system 350 through a public Hypertext TransferProtocol (HTTP) 304 environment, such as the public Internet. As alsoshown in FIG. 3, the merchant's website administrators 362, andassociated merchant systems 364, are likewise able to access the reportservices system 366 through the public HTTP environment 304.

In various embodiments, the offline services system 316, thepurification services system 334, the timeline services system 350, andreport services system 366 respectively include a public ApplicationProgram Interface (API) 318, a purification API 336, a timeline API 352,and a report API 368. In various embodiments, the public API 318, thepurification API 336, and the timeline API 352 manage HTTP requestsoriginating from browsers used by visitors to a merchant's website 302that has implemented merchant-specific Picks Javascript (JS) files thatare described in greater detail herein. In various embodiments, thepublic API 318 also manages HTTP requests from the content deliverynetwork 306. In various embodiments, the report API 352 manages HTTPrequests from the merchant's website administrators 362 and associatedmerchant systems 364.

In various embodiments, the content served by the Pick System 300 to thepublic HTTP environment is the same, or changes infrequently, regardlessof which user is accessing the content. In certain of these embodiments,this content is cached in, and served from, a CDN 306, such as theCloudFront® CDN 306 provided by Amazon® Web Services (AWS) to reducedelivery latency. In various embodiments, the CDN 306 includes clonedproduct images 308, Pick Collage images 310, consolidated Picks JS 312,and merchant product images 314. As used herein, a cloned product image308 refers to a duplicated client product image 314. In one embodiment,a merchant product image 314 is resized to generate a cloned productimage 302.

In one embodiment, a request is received for a cloned product image 308,a Pick Collage image 310, consolidated Picks JS 312, or a merchantproduct image 314 that is not currently present in the CDN 306. In thisembodiment, the CDN 306 submits a request to the public API 318 todynamically build and retrieve the requested content. In one embodiment,a request is received for a merchant product image 314. In thisembodiment, the public API 318 will in turn submit a request to themerchant's website to retrieve the image and then save it in the CDN 306for subsequent use.

In various embodiments, the purification services system 334 isimplemented to perform purification services on content submitted byPick System users to ensure that inappropriate content (e.g., profanity,derogatory comments, etc.) is not presented in the merchant's website.As shown in FIG. 3, the purification services system 334 includes apurification API 336, which submits requests for purification servicesto one or more purification queues 340, which in turn manage submissionof the purification service requests to one or more purificationservices servers 342. The one or more purification services servers 356then use purification data stored in the purification database 346 toperform purification services on content stored in the Picks database332.

As likewise shown in FIG. 3, the timeline services system 350 includes atimeline API 352, which submits requests for timeline information to oneor more time queues 354, which in turn manage submission of the timelineinformation requests to one or more timeline services servers 356. Theone or more timeline services servers 356 then process timeline datastored in the timeline database 358 to generate a timeline informationresponse, which in turn is provided to the timeline API 352.

In various embodiments, the timeline services system 350 is implementedphysically and logically separate from other components of the PickSystem 300 to offset the computationally intensive effects of generatingand providing timeline information. In certain of these embodiments,timeline services are exposed in a traditional HTTP manner, similar tothe public API 318. However, the timeline services are not accessedthrough the public HTTP environment 304 in these embodiments. Instead,when a timeline information request is received by the public API 318,it makes a private HTTP request 322 to the timeline services system 350to either request or record timeline information.

In various embodiments, the offline services system 316 is implementedto perform Pick System 300 processes associated with services that donot need to be provided in real-time. In certain of these embodiments,the Pick System 300 services are provided asynchronously. Examples ofsuch processes include the calculation of timeline data or aggregationof reporting statistics.

As shown in FIG. 3, the offline services system 316 includes a publicAPI 318, which submits requests for offline services to one or more webqueues 324, which in turn manage submission of the offline servicerequests to one or more offline services servers 326. The one or moreoffline services servers 326 then processes various data elements storedin the Picks database 332 to generate an offline services response,which in turn is provided to the public API 318.

In various embodiments, a report services system 366 is implemented toallow merchant administrators 362 and merchant systems 364 to accessvarious information related to data that the Pick System 300 collects.Examples of such data include the top Pick Lists associated with themerchant's website, most popular products, most-liked users, etc. Asshown in FIG. 3, the report services system 366 includes a report API368, which submits requests for report services to one or more reportservices servers 370. The one or more report services servers 370 thenprocesses various data elements stored in the reporting database 372 togenerate a report services response, which in turn is provided to thereport API 368.

In one embodiment, the report API 368 provides merchant websiteadministrators 362 a public HTTP 304 interface, which can be used withtheir browsers to browse information stored in the reporting database372. In another embodiment, the report API 368 provides merchant systems364, such as business intelligence systems or data warehouses, a publicHTTP 304 interface to dynamically submit report services requests to thereport services servers 370. In various embodiments, the offlineservices system 316 provides various Pick System 300 data in the form ofreporting topics 360 via a private HTTP interface to the report servicessystem 366.

In various embodiments, Pick System 300 data, with the exception ofmerchant product images 314, is stored in the Picks database 332, thetimeline database 358, and the reporting database 372, which areimplemented in a private Open Database Connectivity (ODBC) environment330. In certain embodiments, the Picks database 332 includes merchantconfiguration details, registered user records, Pick Lists, and PickCollages. In various embodiments, server-based scraping is implementedto mitigate potential issues with inappropriate content being injectedinto the Pick System 300, and by extension, the Picks database 332, bymalicious users.

In various embodiments, a database sharding approach is implemented forlarge data sets stored in the Picks database 332. As used herein, adatabase shard is a horizontal partition in a database or search engine.Each individual partition is referred to as a shard or database shard.Horizontal partitioning is a database design principle whereby rows of adatabase table are held separately, rather than being split intocolumns. Each partition forms part of a shard, which may in turn belocated on a separate database server or physical location. In at leastone embodiment, the Picks Database 332 is implemented using a NoSQLdatabase.

FIG. 4 is a generalized flowchart of the implementation of a socialmedia product recommendation system in accordance with an embodiment ofthe invention in an electronic commerce environment. In this embodiment,operations to implement a social media product recommendation system,herein referred to as a “Pick System,” are begun in step 402, followedby configuring a merchant's source web page markup content and scriptcode to receive consolidated Pick System script code in step 404. Invarious embodiments, the source web page markup content includesHypertext Markup Language (HTML) content. In various embodiments, thesource script code includes Javascript (JS) code.

Then, in step 406, the merchant's source web page markup content andscript code are processed to generate merchant web page script codecustomizations. The resulting merchant web page script codecustomizations are then processed in step 408 with predetermined PickSystem script code to generate consolidated Pick System script code. Theresulting consolidated Pick System script code is then implemented inpredetermined merchant web pages as merchant-specific script code instep 410.

The merchant's source web page markup content and script code is thenmonitored in step 412 for the occurrence of modifications, followed by adetermination being made in step 414 whether any modifications haveoccurred. If so, then the modified web page markup content and scriptcode is received from the merchant's web site in step 416 and theprocess is continued, proceeding with step 406. Otherwise, adetermination is made in step 418 whether to end Pick Systemimplementation operations. If not, then the process is continued,proceeding with step 412. Otherwise, Pick System implementationoperations are ended in step 420.

FIGS. 5a through 5c are a generalized flowchart of Pick List managementoperations performed in accordance with an embodiment of the inventionin an electronic commerce environment. In this embodiment, Pick Listmanagement operations are begun in step 502, followed by a usernavigating in step 504 to a merchant's web site that has implemented thePick System. Then, in step 506, the user opens a Pick List managementcontrol window.

A determination is then made in step 508 whether the user is currentlylogged into the Pick System. In one embodiment, the user logs into thePick System at each merchant's website. In another embodiment, PickSystem is implemented to support universal login. In this embodiment,the user initially logs into the Pick System at a first merchant'swebsite. Thereafter, they are automatically logged into the Pick Systemat other merchant's websites.

If it was determined in step 508 that the user not logged into the PickSystem, then the user is prompted in step 510 to provide logincredentials, which are then provided in step 512. A determination isthen made in step 514 whether the user has been authenticated by theprovided login credentials. If not, a determination is made in step 516whether to create a Picks user profile for the user. If so, then a Picksuser profile is created for the new user, who then populates thenewly-created Picks user profile with associated user accountinformation in step 520.

Once the new Pick System user populates their Picks user profile in step520, or if it was determined in step 516 not to create a Picks userprofile for a new user, a determination is made in step 560 whether toend Pick List management operations. If not, then the process iscontinued, proceeding with step 510. Otherwise, Pick List managementoperations are ended in step 562.

However, if it was determined in step 508 that the user was currentlylogged into the Pick System, or if it was determined in step 514 thatthe user was authenticated, then a determination is made in step 522whether the user's Picks user profile is to be modified. If so, thenPicks user profile modifications are performed in step 524. Adetermination is then made in step 526 whether modification operationsto the user's Picks user profile have been completed. If not, then theprocess is continued, proceeding with step 524. Otherwise, or if it wasdetermined in step 522 that the user's Picks user profile was not to bemodified, then the user browses product details pages at the merchant'swebsite in step 528.

A determination is then made in step 530 whether one or more productsdisplayed on a product details page is to be added to a Pick List by thePick System user. If so, then a determination is made in step 532whether the one or more products is to be added to an existing or a newPick List. If it is determined in step 532 that the one or more selectedproducts is to be added to an existing Pick List associated with thePick System user, then the existing Pick List is selected by the PickSystem user in step 534. The one or more selected products are thenadded to the selected Pick List in step 536. However, if it isdetermined in step 532 to add the one or more selected products to a newPick List, then a new Pick List is created and associated with the PickSystem user in step 538. The one or more selected products are thenadded to the newly-created Pick List in step 540. Once the one or moreselected products are respectively added to the existing ornewly-created Pick Lists in steps 536 or 540, the process is continued,proceeding with step 528.

However, if it was determined in step 530 not to add one or moreproducts to a Pick List, then a determination is made in step 542whether to edit a Pick List. If so, then a Pick List is selected in step544 to edit. Pick List editing operations are then performed on theselected Pick List in step 546. Once Pick List editing operations areperformed in step 546, a determination is made in step 546 whether PickList editing operations are completed. If not, then the process iscontinued, proceeding with step 543. Otherwise, or if it was determinedin step 542 not to edit a Pick List, a determination is made in step 550whether to view Pick List activity. If so, then a Pick List to view isselected in step 552, followed by the performance if Pick List activityviewing operations in step 554.

Once Pick List activity viewing operations have been performed in step554, a determination is made in step 556 whether Picks List activityviewing operations have been completed. If not, then the process iscontinued, proceeding with step 554. Otherwise, or if it was determinedin step 550 not to view Pick List activity, a determination is made instep 558 whether to continue Pick List management operations at anothermerchant's web site. If so, then the process is continued, proceedingwith step 504. Otherwise, the process is continued, proceeding with step560.

FIGS. 6a and 6b show the display of user's Picks user profile within aPicks user profile user interface (UI) window implemented in accordancewith an embodiment of the invention. In various embodiments, a PickSystem user navigates to a merchant's web site that has implemented thePick System to manage their Picks user profile 604. As used herein, aPicks user profile 604 refers to the combination of Pick System useraccount information and associated Picks data. In various embodiments,the data in a Picks user profile 604 may include the Pick System user'slogin credentials 632, 634, their Pick System screen name 606 or Picksavatar 608, associated user information 610, Pick Lists 626.1, 626.2,626.3, 626.4 and Pick Collages they have created, and their “likes” and“favorites” 612. As used herein, a “Pick System screen name” 606 refersto a user identifier associated with a user of the Pick System. Incertain embodiments, the user is unable to create and manage their PickLists 626.1, 626.2, 626.3, 626.4 and Pick Collages until an associatedPicks user profile 604 has been created.

If the user is not currently logged into the Pick System, then theysubmit their user credentials for authentication. In certainembodiments, a Picks fly-out UI window 630 is implemented for thesubmission of user credentials, such as a user identifier (ID) 632 andpassword 634. As used herein, a Picks fly-out UI window 630 refers to afly-out window that resides on a merchant's web page, which can beopened and used by a Picks system user for various purposes. In variousembodiments, these purposes include being authenticated by the PickSystem and managing their associated Pick Lists, Pick Collages, or Picksuser profile. In certain of these embodiments, the Picks fly-out UIwindow 630 is persistently made available to the user as they navigatevarious pages of the merchant's website. In various embodiments, thePick System provides standalone user account management andauthentication capabilities. In certain embodiments, Pick System useraccount management and authentication capabilities are integrated intothe merchant's website's existing user account and authenticationservices.

In certain embodiments, the Pick System user can either log into anexisting Picks account or create a new one. If the user decides tocreate a new Picks account, then an associated Picks user profile 604 iscreated, populated by the user, and then displayed within the Picks userprofile UI window 602. Once the Pick System user is authenticated, theycan then proceed to manage their Picks user profile by selecting acommand button, such as the “Manage Picks user profile” command button636, with a user gesture.

In various embodiments, the Picks user profile 604 provides the abilityfor the user to create a “persona” that may include items such as a PickSystem screen name 606, a profile picture 608 or Picks avatar 608, ageographic location 610, interests 612, and a profile description 610.In certain embodiments, the Pick System user can edit this informationby selecting an “Edit” command button 640 through a user gesture, suchas a mouse-click with a cursor. In various embodiments, the provided“persona” information becomes the basis of the user's public Picks userprofile 604 on the merchant's website.

In various embodiments, Pick Lists 626.1, 626.2, 626.3, 626.4 and PickCollages are displayed within a Pick Lists sub-window 624. In theseembodiments, the Pick Lists 626.1, 626.2, 626.3, 626.4 include areference to the Pick System user that created them. In certain of theseembodiments, a Pick List 626.1, 626.2, 626.3, 626.4 or Pick Collage canbe “clicked-through” by viewers who desire additional informationassociated with their creator. In these embodiments, the creator's Picksuser profile 604 is then displayed in the Picks user profile UI window602. In various embodiments, the Picks user profile 604 containspersonalized attributes about the Pick System user to further supportthe authenticity of the content they have created.

In various embodiments, a Pick System user is provided the ability toupload a Picks user profile image 808 that will be displayed with theirPick Lists 626.1, 626.2, 626.3, 626.4, Pick Collages and Picks userprofile 604. In certain embodiments, a Pick System user is provided theability to import an existing social media (e.g., Facebook®, Twitter®,etc.) profile image as their Picks user profile image 608. In variousembodiments, a Pick System user is provided the ability to define aPicks user profile Screen Name 606 that is displayed with their PickLists 626.1, 626.2, 626.3, 626.4, Pick Collages, and Picks user profile604. In certain embodiments, a Pick System user is provided the abilityto select predetermined attributes 610, 612 that express theirinterests, define their location information, and write a briefdescription about themselves. In various embodiments, a Pick System useris provided the ability to select a predetermined image for their Picksuser profile from a list of predefined backgrounds.

In various embodiments, the Pick System is implemented to provide PickSystem users the ability to socially share their Picks user profile 604,or another user's Picks user profile to various social mediaenvironments 620, such as Facebook®, Twitter® or Pinterest®. Forexample, the other such users may be “followers” 616 of the Pick Systemuser or users that the Pick System user is “following” 618. In certainembodiments, viewers of another user's Picks user profile have theability to “follow” that user through the selection of a “Follow”control button 614 through a user gesture, such as a mouse-click. Invarious embodiments, each Pick System user's Picks user profile 604displays who the “followers” 616 are of a Pick System user. In certainembodiments, the user's Picks user profile 604 displays who the PickSystem user is “following” 618. In certain embodiments, the Pick Systemis implemented to allow a Pick System user to “click through” a listedfollower 616 to access that the follower's associated Pick Lists, PickCollages, and Picks user profile.

In various embodiments, the Pick System is implemented to provide anongoing update of Pick List activities, herein referred to as a “PicksActivity Feed” 628, related to the Pick System user. In certainembodiments, the Picks Activity Feed 628 is provided in the form of a“Public View” within the Picks user profile UI window 602. In theseembodiments, only predetermined Picks Activity Feed 628 informationassociated with a Pick System user is displayed to viewers of the user'sPicks user profile 604. In one embodiment, the predetermined PicksActivity Feed 628 information only includes Pick List activities thatthe Pick System user has completed. In various embodiments, the PublicView of the Picks Activity Feed 628 provides a list of the Pick Liststhat the Pick System user has created. In certain embodiments, thePublic View of the Picks Activity Feed 628 provides a list of the PickLists that the Pick System user has “liked.” In certain embodiments, thePicks Activity Feed 628 is provided in the form of a “Private View.” Inthese embodiments, the Picks Activity Feed information includesactivities completed by the user as well as activities associated withother users' Pick Lists, Pick Collages, and Picks user profiles.

FIGS. 7a and 7b show a Pick List fly-out user interface windowimplemented in accordance with an embodiment of the invention to managea plurality of Pick Lists. In various embodiments, Pick Systemfunctionality is implemented in a merchant's website. In certain ofthese embodiments, predetermined Pick System functionality is exposed tothe user within a user interface (UI) window, such as a product detailsUI window 702 of the merchant's website. In this embodiment, the productdetails UI window 702 includes a featured product sub-window 704, whichincludes details associated with an individual featured product (e.g.,product description, pricing, etc.), and a suggested products sub-window714, which includes summary descriptions of a plurality of suggestedproducts.

Referring to FIG. 7a , the featured product sub-window 704 also includesa “Write a Review” command button 706, which allows a Picks User to posta review of the featured product when selected through a user gesture,such as a mouse-click with a cursor. In certain embodiments, thefeatured product sub-window 704 includes a plurality of “Share withFriends” command buttons 708. In these embodiments, a Pick System useris provided the ability to socially share the featured product to apredetermined social media site (e.g., Facebook®, Twitter®, etc.) byselecting a corresponding “Share with Friends” command button 708 with auser gesture. In various embodiments, the featured product sub-window704 includes a modal shopping sub-window 710, described in greaterdetail herein, which displays different options (e.g., quantity, colors,sizes, styles, etc.) that are available for the featured product.

In certain embodiments, the featured product sub-window 704 includes an“Add to Bag” command button 712. In these embodiments, the featuredproduct is added to the user's shopping cart by selecting the “Add toBag” command button 712 through a user gesture. In various embodiments,an “Add to My Picks” 720 control button is displayed to the Pick Systemuser within the product details UI window 704. In certain embodiments,selection of the “Add to My Picks” 720 control button presents the PickSystem user additional user controls, which allow the user to specifywhich Pick List the product should be added to. In various embodiments,a plurality of Pick Lists 724.1, 724.2, 724.3 associated with variousPick List users are displayed within a Pick Lists sub-window 722. Inthese embodiments, a Pick System user is able to create a new Pick Listby selecting a “Create Your Own” command button 726.

In various embodiments, a Picks fly-out UI window 730 is implemented toprovide the Pick System user the ability to perform Pick List editingoperations on a predetermined Pick List. In certain embodiments, thePicks fly-out UI window 730 is implemented to display thumbnail images732 of their existing Pick Lists. In these embodiments, a targetthumbnail image 732 is selected by the Pick System user, who then usescontrols 734 to view or edit the Pick List corresponding to the selectedthumbnail image 732.

In certain embodiments, the Picks fly-out UI window 730 is implementedto provide the Pick System user the ability to delete individualproducts from the Pick List, rearrange the display order of products,rename, or delete the Pick List from the Pick System. In variousembodiments, the Picks system automatically creates a Picks Detail Pagethat provides a list of products contained in the Pick List. In certainembodiments, the Pick System provides access to additional informationand capabilities depending upon the context of the Pick System userviewing the Picks Detail Page. In various embodiments, the Picks fly-outUI window 730 is implemented to provide the Pick System user the abilityto directly access the Picks Detail Page.

FIGS. 8a through 8c are a generalized flowchart of Pick List viewingoperations performed in accordance with an embodiment of the inventionin an electronic commerce environment. In this embodiment, Pick Listviewing operations are begun in step 802, followed by a user navigatingin step 804 to a merchant's web site that has implemented the PickSystem. The user then browses product details pages at the merchant'swebsite in step 806, followed by a determination being made in step 808whether to view a Pick List associated with a product in step 808. Ifnot, then a determination is made in step 854 whether to perform PickList viewing operations at another merchant's website. If so, then theprocess is continued, proceeding with step 804. Otherwise, Pick Listviewing operations are ended in step 856.

However, if it was determined in step 806 to view a Pick List associatedwith a product displayed on merchant's product details page, then theviewer selects a Pick List to view in step 810. The selected Pick listis then browsed by the viewer in step 812. In various embodiments,viewing the Pick List provides the viewer a list of the products withinthe Pick List, including their associated product name, product title,product ratings, and price. In certain embodiments, selecting productlisted in the Pick List with a user gesture, such as a mouse click,allows the viewer to add the selected product to their shopping cart asdescribed in greater detail herein.

A determination is then made in step 814 whether to view a differentPick List. If so, then the process is continued, proceeding with step808. Otherwise, a determination is made in step 816 whether the viewerwishes to view other users who “liked” the selected Pick List. If so,then a list of other users who “liked” the selected Pick list isdisplayed to the viewer in step 818. In certain embodiments, the PickSystem is implemented to allow the viewer to “click through” a listedviewer to access that the viewer's associated Pick Lists, Pick Collages,and Picks user profile. After the viewer has completed viewing theviewers that “liked” the Pick List, or if it was determined in step 816not to view users that “liked” the Pick List, a determination is made instep 820 whether the viewer wishes to “like” the Pick List. If so, thenthe viewer performs a user gesture in step 822 to mark the Pick List asa Pick List they “liked.”

After the viewer has marked the Pick List in step 822 as a Pick Listthey “liked,” or if it was determined in step 820 not to mark theselected Pick List as a Pick List they “liked,” a determination is madein step 824 whether the viewer wishes to “share” the Pick List to asocial media site. If so, then the viewer performs social media“sharing” operations familiar to those of skill in the art in step 826to “share” the Pick List to one or more social media sites (e.g.,Facebook®, Twitter® or Pinterest®, etc.). In certain embodiments, socialmedia control buttons are implemented to facilitate the viewer in“sharing” the Pick List to one or more social media sites. In variousembodiments, a Picks Detail Page, described in greater detail herein, isdisplayed to the viewer. In these embodiments, the viewer performssocial media “sharing” operations familiar to those of skill in the artin step 826 to socially share the Picks Detail Page to one or moresocial media sites. In certain embodiments, social media control buttonsare implemented to facilitate the viewer in “sharing” the Pick DetailsPage to one or more social media sites.

After the viewer has performed Pick List social media “sharing”operations in step 826, or if it was determined in step 824 not to“share” the selected Pick List to one or more social media sites, adetermination is made in step 828 whether the viewer wishes to viewother Pick Lists associated with the creator of the currently selectedPick List. If so, then the viewer views other Pick Lists associated withcreator of the currently selected Pick List in step 830. After theviewer has viewed other Pick Lists associated with the creator of thecurrently selected Pick List step 830, or if it was determined in step828 not to view other Pick Lists associated with the creator of thecurrently selected Pick List, a determination is made in step 832whether the viewer wishes to add one or more products in the selectedPick List to their shopping cart.

If it was determined in step 832 that the viewer did not wish to add oneor more products in the Pick List to their shopping cart, then adetermination is made in step 848 whether to end Pick List viewingoperations. If not, then the process is continued, proceeding with step806. However, if it was determined in step 832 to add one or moreproducts in the selected Pick List, then a determination is made in step834 whether the viewer wishes to add all of the products in the selectedPick List to their shopping cart. If so, then they are added in step836. However, if it was determined in step 834 that the viewer does notwish to add all of the products in the selected Pick List to theirshopping cart, then a product in the Pick List is selected in step 838,followed by a determination being made in step 840 whether the selectedproduct has any selectable attributes. If so, then the viewer selectsthe desired product attributes in step 842 and the selected product isadded to the shopping cart in step 844, followed by a determinationbeing made in step 846 whether the viewer wishes to select anotherproduct. If so, the process is continued, proceeding with step 838.

Otherwise, or once all products in the selected Pick List are added tothe viewer's shopping cart in step 836, or if it was determined in step832 not to add one or more products to the viewer's shopping cart, thenthe process is continued, proceeding with step 848. However, if it isdetermined in step 848 to end Pick List viewing operations, then adetermination is then made in step 850 whether there are products in theviewer's shopping cart. If so, then shopping cart checkout operationsfamiliar to those of skill in the art are performed in step 852.Thereafter, or if it was determined in step 850 that there are noproducts in the viewer's shopping cart, then the process is continued,proceeding with step 854.

FIGS. 9a and 9b show the display individual products associated with aPick List within a user interface (UI) window implemented in accordancewith an embodiment of the invention. In various embodiments, individualproducts 914 associated with a Pick List are displayed within a PickList content UI window 912. In various embodiments, the Picks userprofile 904 of the creator of the Pick list is displayed in conjunctionwith the Pick List content UI window 912. In certain embodiments, thePicks user profile 904 may display the Pick List creator's Pick Systemscreen name 906, their Picks avatar 908, and the number of their“followers” 910 on social media sites. In various embodiments, thumbnailimages 918 of the followers are displayed. In one embodiment, the viewerof the Pick List content UI window 912 can add all of the individualproducts 914 to their own Pick List by selecting the “Add All to MyPicks” command button 916 with a user gesture, such as a mouse-clickwith a cursor. In various embodiments, other Pick Lists 920 created bythe creator of the Pick List shown in the Pick List content UI window912 are displayed. In certain embodiments, the viewer of the other PickLists 920 can “click-through” to the other Pick Lists 920 with a usergesture, such as a mouse-click with a cursor.

FIGS. 10a and 10b show the display of product details and associateduser reviews and recommendations within a user interface (UI) windowimplemented in accordance with an embodiment of the invention. Invarious embodiments, Pick System functionality is implemented in amerchant's website. In certain of these embodiments, predetermined PickSystem functionality is exposed to the user within a UI window, such asa product details UI window 702 of the merchant's website. In thisembodiment, the product details UI window 702 includes a featuredproduct sub-window 704, which includes details associated with anindividual featured product (e.g., product description, pricing, etc.),and a suggested products sub-window 714, which includes summarydescriptions of a plurality of suggested products. As shown in FIG. 10b, the product details UI window 702 also includes a summarized productreview sub-window 1016, which includes summary information associatedwith users' reviews of the product displayed in the featured productsub-window 704. Likewise, the product details UI window 702 includes anindividual product review sub-window 1018, which includes a plurality ofindividual users' reviews of the product displayed in the featuredproduct sub-window 704.

Referring to FIG. 10a , the featured product sub-window 704 alsoincludes a “Write a Review” command button 706, which allows a PicksUser to post a review of the featured product when selected through auser gesture, such as a mouse-click with a cursor. In variousembodiments, the resulting product review is displayed within theindividual product review sub-window 1018. In certain embodiments, thefeatured product sub-window 704 includes a plurality of “Share withFriends” command buttons 708. In these embodiments, a Pick System useris provided the ability to socially share the featured product to apredetermined social media site (e.g., Facebook®, Twitter®, etc.) byselecting a corresponding “Share with Friends” command button 708 with auser gesture. In various embodiments, the featured product sub-window704 includes a modal shopping sub-window 710, described in greaterdetail herein, which displays different options (e.g., quantity, colors,sizes, styles, etc.) that are available for the featured product. Incertain embodiments, the featured product sub-window 704 includes an“Add to Bag” command button 712. In these embodiments, the featuredproduct is added to the user's shopping cart by selecting the “Add toBag” command button 712 through a user gesture.

FIGS. 11a and 11b show a modal shopping sub-window implemented within auser interface (UI) window in accordance with an embodiment of theinvention. In various embodiments, a modal shopping sub-window 1104 isimplemented to allow a viewer of a Pick List to select a product 1106listed within the Pick List with a user gesture, such as a mouse-clickon the “Add to Bag” command button 1112, to add it to their shoppingcart. In certain embodiments, the modal shopping sub-window isimplemented to allow the viewer of the Pick List to select productvariations 1108 (e.g., color, size, etc.) and quantity 1110 beforeadding their selection to their shopping cart. In various embodiments,the Pick System screen name 1114 of the creator of the Pick List isdisplayed within the modal shopping sub-window 1104. In certainembodiments, the viewer can “click-through” the Pick System screen name1114, which hyperlinks the viewer to the Pick List creator's Picks userprofile. In various embodiments, a product list drop-down menu 1130 isimplemented within the modal shopping sub-window 1104, which listsproduct options for the selected product 1106.

FIGS. 12a through 12c are a generalized flowchart of the performance ofmobile device Pick List management operations implemented in accordancewith an embodiment of the invention. In this embodiment, mobile devicePick List management operations are begun in step 1202, followed by aPick System user entering a physical site associated with a merchantthat has implemented the Pick System in step 1204. As an example, thephysical site may be a retail or wholesale store. In step 1206, the PickSystem user initiates a mobile Pick System application on their mobiledevice. In one embodiment, the mobile Pick System application isspecific to a predetermined merchant that has implemented the PickSystem, such as the merchant associated with the physical site. Inanother embodiment, the mobile Pick System application is configured tobe specific to a predetermined set of merchants that have implementedthe Pick System. In yet another embodiment, the mobile Pick Systemapplication is configured to support Pick System operations with anymerchant that has implemented the Pick System.

The Pick System user then logs into the Pick System and is authenticatedin step 1208. Once authenticated, the Pick System user browses productsdisplayed at the merchant's physical site in step 1210, followed by adetermination being made in step 1212 whether the Pick System userwishes to perform a mobile device Pick List management operation. Ifnot, then a determination is made in step 1260 whether to continuemobile device Pick List management operations. If so, then the processis continued, proceeding with step 1210. Otherwise, mobile device PickList management operations are ended in step 1262.

However, if it is determined in step 1212 to perform a mobile devicePick List management operation, then a determination is made in step1214 whether to add a displayed product to a Pick List associated withthe Pick List user. If so, then a determination is made in step 1216whether to add the displayed product to a new Pick List or an existingPick List. If it is determined in step 1216 to create a new Pick List,then a new Pick List is created by the Pick System user as described ingreater detail herein. Otherwise, as likewise described in greaterdetail herein, an existing Pick List is selected by the Pick System userin step 1220.

Once a new Pick List has been created in step 1218, or an existing PickList has been selected in step 1220, a determination is made in step1222 whether to retrieve an existing image of the displayed product ortake a photo of it. If it is determined in step 1222 to take a photo ofthe displayed product, then the Pick System user uses a cameraintegrated within their mobile device in step 1224 to take a photo ofthe displayed product. The photo of the displayed product is thenprovided to the Pick System in step 1226, where it is processed andadded to the newly-created or selected Pick List in Step 1228.

However, if a determination was made in step 1222 to retrieve an imageof the displayed product, then a coding symbol associated with thedisplayed product is scanned and processed in step 1230 to generatestock keeping unit (SKU) data. In various embodiments, the coding symbolmay be implemented as a quick response (QR) code. In certain embodiment,the coding symbol may be implemented to use various coding symbols,including but not limited to bar code symbols in linear,two-dimensional, or matrix format, PDF417, MicroPDF4l7, MaxiCode, DataMatrix, Aztec, Aztec Mesas, Code 49, EAN-UCC Composite, Snowflake,Dataglyphs, Code 39, Code 128, Codabar, UPC, EAN, Interleaved 2 of 5,Reduced Space Symbology, Code 93, Codablock F, and BC412, Postnet,Planet Code, British Post, Canadian Post, Japanese Post, KIX(Netherlands) Post, OCR-A, OCR-B, Code 11, UPC, EAN, MSI, Code 16K, etc.

In various embodiments, the mobile device includes an optical inputdevice operable to illuminate the pattern of the coding symbol in orderto capture an image for recognition and decoding purposes. However, itwill be appreciated that any desired imager technology may be used thatis suitable for use in detecting two-dimensional image information andgenerating an electrical output signal indicative of the data opticallyencoded therein. In various embodiments, the mobile device includesprocessing logic configured to receive coding symbol data from theoptical input device. In certain of these embodiments, the processinglogic is further configured to coding symbol data to decode product datastored in the coding symbol. In various embodiments, the mobile deviceincludes a general purpose scanning application configured to scan andprocess the coding symbol. Skilled practitioners of the art will realizethat many such embodiments are possible and the foregoing is notintended to limit the spirit, scope or intent of the invention.

The SKU data is then provided to the Picks System in step 1232, where itis processed to retrieve an associated product image in step 1234. Theretrieved product image is then added to the Pick List and displayedwithin the user interface (UI) of the Pick System user's mobile devicein step 1236. Thereafter, or once the photo of the displayed product hasbeen added to the Pick List in step 1228, a determination is made instep 1238 whether to add another displayed product to the Pick List. Ifso, then the process is continued, proceeding with step 1216. Otherwise,or if it was determined in step 1214 to not add a displayed product tothe Pick List, a determination is made in step 1240 whether to send aPick List to a predetermined set of mobile device users. If not, thenthe process is continued, proceeding with step 1260.

However, if it was determined in step 1240 to send a Pick List to a setof mobile device users, then the Pick System user first selects the PickList to send in step 1242 and the mobile device users to receive thePick list in step 1244. The Pick List is then sent to the selectedmobile device users in step 1246. Then, in step 1248, feedback and otherresponses are received on an ongoing basis from the mobile device userrecipients of the Pick List.

A determination is then made in step 1250 whether to post a Pick List toa predetermined social media site. If not, then the process iscontinued, proceeding with step 1260. Otherwise, the Pick System userfirst selects the Pick List to post in step 1252 and the social mediasite to receive the Pick list in step 1254. The Pick List is then postedto the selected social media site in step 1256. Then, in step 1248,feedback and other responses related to the posted Pick List arereceived on an ongoing basis from users associated with the social mediasite. The process is then continued, proceeding with step 1260.

FIG. 13 shows a Pick System log-in window implemented in the userinterface (UI) of a mobile device implemented in accordance with anembodiment of the invention. In this embodiment, a Pick System userprovides authentication credentials, such as their Pick System screenname 1306 and password 1308 with the UI 1304 of their mobile device1302. Once entered, the authentication credentials are then submitted tothe Pick System when the Pick System user selects the “Sign In” commandbutton with a user gesture, such as a finger tap.

FIG. 14 shows a Pick List creation command button implemented in the UIwindow of a mobile device implemented in accordance with an embodimentof the invention. In this embodiment, a Pick System user is presented aplurality of existing Pick Lists 1408, 1410, 1412, and a “Create a NewPick” command button 1406 within the UI 1404 of their mobile device1302. As described in greater detail herein, the Pick System user firstselects an existing Pick List, such as Pick List 1408, 1410, 1412, orcreates a new Pick List by selecting the “Create a New Pick” commandbutton 1406 with a user gesture, such as a finger tap. The Pick Systemuser can then add an existing image, or a photo, of a product displayedwithin a merchant's physical site to either a newly created or anexisting Pick List 1408, 1410, 1412.

FIG. 15 shows a Pick List management window implemented in the UI of amobile device implemented in accordance with an embodiment of theinvention. In this embodiment, a Pick System user is presented aplurality of existing Pick Lists 1408, 1410, 1412 within the UI 1504 oftheir mobile device 1302. As described in greater detail herein, thePick System can perform Pick List management functions, such as “ViewContents of a Pick List,” “Delete a Pick List,” “Add a Product to a PickList,” “Delete a Product from a Pick List,” etc.

FIG. 16 shows a Pick List product addition window implemented in theuser interface (UI) of a mobile device implemented in accordance with anembodiment of the invention. In this embodiment, a Pick System user isprovided prompts 1606 within the UI 1604 of their mobile device 1302 toinitiate the provision of an existing product image, or to take a photo,of a product displayed at a merchant's physical site. As described ingreater detail, the provided product image, or resulting photo, is thenprocessed by the Pick System for addition to an existing ornewly-created Pick List.

FIG. 17 shows the capture of a coding symbol associated with a productby a mobile device implemented in accordance with an embodiment of theinvention. In this embodiment, a coding symbol 1706 associated with aproduct displayed within a merchant's physical site is displayed withinthe user interface (UI) 1704 of a Pick System user's mobile device. Inthis embodiment, the coding symbol 1706 is scanned by selecting the“Camera” icon 1708 through the use of a user gesture, such as a fingertap. As described in greater detail herein, the coding symbol 1706 isscanned and processed to generate stock keeping unit (SKU) data, whichis then provided to the Pick System. As likewise described in greaterdetail herein, the Pick System processes the SKU data to find a productimage of the displayed product.

FIG. 18 shows a product image, and associated product details,corresponding to a coding symbol captured by a mobile device implementedin accordance with an embodiment of the invention. In this embodiment, aproduct image 1806, corresponding to a product displayed within amerchant's physical site, is provided by the Pick System for displaywithin the user interface (UI) 1804 of a Pick System user's mobiledevice 1302. As shown in FIG. 18, and described in greater detailherein, the provided product image can then be added to an existing, ornewly-created, Pick List by selecting the “Add to My Picks” commandbutton 1808 through the use of a user gesture, such as a finger tap.

FIGS. 19a and 19b are a generalized flowchart of the performance ofmobile device Pick List viewing operations implemented in accordancewith an embodiment of the invention. In this embodiment, mobile devicePick List viewing operations are begun in step 1902, followed by a PickSystem user entering a physical site associated with a merchant that hasimplemented the Pick System in step 1904. As an example, the physicalsite may be a retail or wholesale store. In step 1906, the Pick Systemuser initiates a mobile Pick System application on their mobile device.In one embodiment, the mobile Pick System application is specific to apredetermined merchant that has implemented the Pick System, such as themerchant associated with the physical site. In another embodiment, themobile Pick System application is configured to be specific to apredetermined set of merchants that have implemented the Pick System. Inyet another embodiment, the mobile Pick System application is configuredto support Pick System operations with any merchant that has implementedthe Pick System.

The Pick System user then logs into the Pick System and is authenticatedin step 1908. In various embodiments, the Pick System user is notrequired to be authenticated. In these embodiments, the Pick System useris not allowed to perform mobile device Pick List management operationsdescribed in greater detail herein. Once authenticated, of ifauthentication of the Pick system user is not required, the Pick Systemuser browses products displayed at the merchant's physical site in step1910, followed by a determination being made in step 1912 whether thePick System user wishes to select a displayed product and view relatedPick Lists. If not, then a determination is made in step 1934 whether tocontinue mobile device Pick List viewing operations. If so, then theprocess is continued, proceeding with step 1910. Otherwise, mobiledevice Pick List viewing operations are ended in step 1936.

However, if it was determined in step 1912 to select a displayed productand view related Pick Lists, then a coding symbol associated with adisplayed product is scanned and processed as described in greaterdetail herein to generate stock keeping unit (SKU) data in step 1914.The resulting SKU data is provided to the Pick System in step 1916,where it is processed in step 1918 to identify Pick Lists that containthe product corresponding to the SKU data. The identified Pick Lists arethen provided in step 1920 for display within the user interface (UI) ofthe Pick System user's mobile device.

Then, in step 1922, the Pick System user views the other productscontained in the provided Pick Lists, followed by a determination beingmade in step 1924 whether to request the location of a predeterminedproduct within one of the provided Pick Lists. If not, then the processis continued, proceeding with step 1934. Otherwise, the user selects apredetermined product in one of the provided Pick Lists and submits arequest to the Pick System for its location in step 1926. In turn, thePick System processes product data associated with the selected product,and data associated with the merchant's physical site, in step 1928 todetermine the location of the selected product.

Once the location of the selected product is determined, it is providedin step 1930 to the Pick System user as product location information,which is displayed within the UI of the Pick System user's mobiledevice. The Pick System user then views the provided locationinformation to locate the selected product in step 1932 and the processis continued, proceeding with step 1934. In various embodiments, theproduct location information includes the location of the product withinthe merchant's physical site. In certain of these embodiments, theproduct location information includes navigation information to assistthe Pick System user in locating the product. In various embodiments,the location information includes information stating that the productis only available from the merchant's website. In certain of theseembodiments, the Pick System provides ordering information to the PickSystem user to assist in ordering the product from the merchant's website.

FIG. 20 shows the display of a plurality of Pick Lists corresponding toa product selected by a user within the user interface (UI) of a mobiledevice implemented in accordance with an embodiment of the invention. Inthis embodiment, a Pick System user, as described in greater detailherein, selects a displayed product and submits a request to the PickSystem to view Pick Lists that contain the product. In response, aslikewise described in greater detail herein, the Pick System providesidentified Pick Lists 2006, which are then displayed within the UI 2004of the Pick System user's mobile device 1302. In turn, the Pick Systemuser can then select provided Pick List, such as the “MinimalisticCamping Gear” Pick List 2008, to view the individual products itcontains.

FIG. 21 shows the display of a plurality of products associated with aselected Pick List within the user interface (UI) of a mobile deviceimplemented in accordance with an embodiment of the invention. In thisembodiment, individual products 2106 contained in a previously selectedPick List, such as “Minimalistic Camping Gear” Pick List 2008 shown inFIG. 20, are displayed within the UI 2004 of the Pick System user'smobile device 1302.

The present invention is well adapted to attain the advantages mentionedas well as others inherent therein. While the present invention has beendepicted, described, and is defined by reference to particularembodiments of the invention, such references do not imply a limitationon the invention, and no such limitation is to be inferred. Theinvention is capable of considerable modification, alteration, andequivalents in form and function, as will occur to those ordinarilyskilled in the pertinent arts. The depicted and described embodimentsare examples only, and are not exhaustive of the scope of the invention.

For example, the above-discussed embodiments include software modulesthat perform certain tasks. The software modules discussed herein mayinclude script, batch, or other executable files. The software modulesmay be stored on a machine-readable or computer-readable storage mediumsuch as a disk drive. Storage devices used for storing software modulesin accordance with an embodiment of the invention may be magnetic floppydisks, hard disks, or optical discs such as CD-ROMs or CD-Rs, forexample. A storage device used for storing firmware or hardware modulesin accordance with an embodiment of the invention may also include asemiconductor-based memory, which may be permanently, removably orremotely coupled to a microprocessor/memory system. Thus, the modulesmay be stored within a computer system memory to configure the computersystem to perform the functions of the module. Other new and varioustypes of computer-readable storage media may be used to store themodules discussed herein. Additionally, those skilled in the art willrecognize that the separation of functionality into modules is forillustrative purposes. Alternative embodiments may merge thefunctionality of multiple modules into a single module or may impose analternate decomposition of functionality of modules. For example, asoftware module for calling sub-modules may be decomposed so that eachsub-module performs its function and passes control directly to anothersub-module.

Consequently, the invention is intended to be limited only by the spiritand scope of the appended claims, giving full cognizance to equivalentsin all respects.

What is claimed is:
 1. A computer-implementable method for automatingthe provision and consumption of social media product recommendations ina mobile environment, the mobile environment comprising a mobile device,a cloud computing environment executing a Pick System and a merchantwebsite executing on a merchant system, the merchant systemcommunicating with the Pick System via a network, comprising: presentinga user interface on the mobile device of a user, the user interfacepresenting the Pick system on the mobile device of the user, the Picksystem being implemented to interact with the merchant website, themerchant website integrating Pick System functionality by including amerchant-specific Picks Javascript file in product detail pages of themerchant website, the Pick system allowing the user to create and managecollections of their favorite products using respective Pick Lists viathe mobile device, the Pick system being implemented in the cloudcomputing environment, the Pick system comprising a content deliverynetwork, the Pick Lists comprising content cached in and served from thecontent delivery network associated with the Pick System, the contentdelivery network storing product images, Pick List images, consolidatedPicks Javascript and merchant product images within a Picks database,the Picks database storing large data sets within a plurality ofdatabase shards, each of the plurality of database shards correspondingto an individual partition within the Picks database; receiving productidentification data from the user, the product identification dataprovided through the use of the user interface of the mobile device andcorresponding to a first product displayed at a physical site; receivinguser input data from the user, the user input data provided through theuse of the user interface of the mobile device and comprising a requestto associate the first product with a first Pick List, the first PickList comprising a pictorial grouping of products that the user hasselected, assembled and named via the Pick system; processing via thePick system the product identification data and the user input data toassociate the first product with the first Pick List; receiving PickList association data from the user via the user interface of the mobiledevice, the Pick List association data creating a new Pick List andassociating the first product with the new Pick List; and, displayingone or more of the first Pick List and the new Pick List within the userinterface of the mobile device, the displaying being presented via adisplay of the mobile device and automating provision of social mediaproduct recommendations via the mobile device.
 2. Thecomputer-implementable method of claim 1, wherein the productidentification data comprises one member of the set of: stock keepingunit (SKU) data; and a photograph of the first product.
 3. Thecomputer-implementable method of claim 2, wherein: the SKU data and thephotograph of the first product are generated through the use of themobile device.
 4. The computer-implementable method of claim 3, wherein:the SKU data is generated by the mobile device processing a scannedimage of a coding symbol associated with the first product.
 5. Thecomputer-implementable method of claim 1, further comprising: receivingassociated Pick List input data from a user, the associated Pick Listinput data provided through the use of the mobile device and comprisinga request to provide a second Pick list containing the first product anda second product.
 6. The computer-implementable method of claim 5,wherein: the associated Pick List input data comprises SKU dataassociated with the first product.
 7. The computer-implementable methodof claim 5, further comprising: processing the associated Pick Listinput data to provide the second Pick List.
 8. Thecomputer-implementable method of claim 7, wherein: the first Pick Listand the second Pick List is provided for display within a user interface(UI) of the mobile device from a server at a remote location.
 9. Thecomputer-implementable method of claim 8, wherein: the first Pick Listand the second Pick List is provided for display within a user interface(UI) of the mobile device by a service provider on an on-demand basis.10. A system comprising: a processor; a data bus coupled to theprocessor; and a non-transitory, computer-readable storage mediumembodying computer program code for the provision and consumption ofsocial media product recommendations in a mobile environment, the mobileenvironment comprising a mobile device, a cloud computing environmentexecuting a Pick System and a merchant website executing on a merchantsystem, the merchant system communicating with the Pick System via anetwork, the non-transitory, computer-readable storage medium beingcoupled to the data bus, the computer program code interacting with aplurality of computer operations and comprising instructions executableby the processor and configured for: presenting a user interface on themobile device of a user, the user interface presenting the Pick systemon the mobile device of the user, the Pick system being implemented tointeract with the merchant website, the merchant website integratingPick System functionality by including a merchant-specific PicksJavascript file in product detail pages of the merchant website, thePick system allowing the user to create and manage collections of theirfavorite products using respective Pick Lists via the mobile device, thePick system being implemented in the cloud computing environment, thePick system comprising a content delivery network, the Pick Listscomprising content cached in and served from the content deliverynetwork associated with the Pick System, the content delivery networkstoring product images, Pick List images, consolidated Picks Javascriptand merchant product images within a Picks database, the Picks databasestoring large data sets within a plurality of database shards, each ofthe plurality of database shards corresponding to an individualpartition within the Picks database; receiving product identificationdata from the user, the product identification data provided through theuse of the user interface of the mobile device and corresponding to afirst product displayed at a physical site; receiving user input datafrom the user, the user input data provided through the use of the userinterface of the mobile device and comprising a request to associate thefirst product with a first Pick List, the first Pick List comprising apictorial grouping of products that the user has selected, assembled andnamed via the Pick system; processing via the Pick system the productidentification data and the user input data to associate the firstproduct with the first Pick List; receiving Pick List association datafrom the user via the user interface of the mobile device, the Pick Listassociation data creating a new Pick List and associating the firstproduct with the new Pick List; and, displaying one or more of the firstPick List and the new Pick List within the user interface of the mobiledevice, the displaying being presented via a display of the mobiledevice and automating provision of social media product recommendationsvia the mobile device.
 11. The system of claim 10, wherein the productidentification data comprises one member of the set of: stock keepingunit (SKU) data; and a photograph of the first product.
 12. The systemof claim 11, wherein: the SKU data and the photograph of the firstproduct are generated through the use of the mobile device.
 13. Thesystem of claim 12, wherein: the SKU data is generated by the mobiledevice processing a scanned image of a coding symbol associated with thefirst product.
 14. The system of claim 10, further comprising: receivingassociated Pick List input data from a user, the associated Pick Listinput data provided through the use of the mobile device and comprisinga request to provide a second Pick list containing the first product anda second product.
 15. The system of claim 14, wherein: the associatedPick List input data comprises SKU data associated with the firstproduct.
 16. The system of claim 14, further comprising: processing theassociated Pick List input data to provide the second Pick List.
 17. Thesystem of claim 16, wherein: the first Pick List and the second PickList is provided for display within a user interface (UI) of the mobiledevice from a server at a remote location.
 18. The system of claim 17,wherein: the first Pick List and the second Pick List is provided fordisplay within a user interface (UI) of the mobile device by a serviceprovider on an on-demand basis.